1. Field of the Invention
The present invention relates to an image processing apparatus, an image processing method, and a computer-readable recording medium for carrying out a screen processing for an inputted image by applying a threshold matrix to the inputted image.
2. Description of Related Art
A screen processing is a processing in which a threshold matrix in which different threshold values are set in a matrix manner (hereinafter simply referred to as matrix), is used to carry out binary (or multilevel) operation for a multilevel image data and to reproduce a halftone. Conventionally, various methods for improving a gradation characteristic have been suggested. One of such methods is a method for reproducing a halftone depending on the density of an inputted image. For example, there is a conventional method in which a matrix size can be changed depending on the change of the density of an inputted image to set threshold values in the matrix having the changed size (see Japanese Patent Unexamined Publication No. 5-199406 for example). According to this method, in parts of an image in which the density change is small, the matrix size is expanded and the same threshold values are applied in order to improve the processing efficiency, and in parts of an image in which the density change is large, the matrix size is reduced and different threshold values are applied in order to improve the gradation characteristic.
There is another method in which a matrix to be applied is changed depending on the density of an inputted image (for example, see Japanese Patent Unexamined Publication No. 9-107473). According to this method, in case of high density, a matrix in which threshold values are arranged in a whorl-like manner so that threshold values are increased from the center of the matrix is used, and in case of low density, a matrix in which the above arranged threshold values are inverted is used. In the method, it is possible to reproduce a halftone depending on the change in the density of an inputted image by a simple matrix.
However, in a conventional screen processing, when the matrix in which the applied positions of the threshold values are fixed is used, some arrays of the pixel values of an inputted image may cause deteriorated reproducibility of a thin line having a width of one to several pixels.
For example, as shown in FIG. 7, the case where a 3 pixels×1 pixel matrix having an array of threshold values of (0, 85, 170) is applied to an inputted image having a pixel value array (160, 0, 0) in order to obtain a multilevel image, is considered. In this case, when “the pixel value>the threshold value” is established, the pixel value is directly outputted as an output value. When “the pixel value≦the threshold value” is established, an output value of “0” is outputted. In the case of the inputted image shown in FIG. 7, a threshold value of “0” which is smaller than a pixel value of “160” is applied to the pixel value of “160” and thus the output value is “160”. Thus, no problem is caused because the inputted image is directly reproduced even when the matrix is applied to the pixel value.
On the other hand, another case where the same matrix is applied to an inputted image having a pixel value array of (0, 0, 160), is considered. In this case, a threshold value of “170” is applied to a pixel value of “160” as shown in FIG. 8. As a result, an output value is “0” and data of “160” of the inputted image is lost. This causes an outputted thin line including a thin spot or the like. As a result, the reproducibility of the inputted image is deteriorated.